You can modify shape
definition files to improve their ability to display superscripts
and subscripts.
The AutoCAD SHX fonts
have limited superscript and subscript capabilities. However, it
is relatively easy to modify shape definition files to improve superscript
and subscript capability.
Creating superscripts and subscripts requires
two steps. First, the “imaginary pen” that is
creating the text, vector by vector, on your screen needs to be shifted
up or down. Then, the font “scale” needs to be
reduced. In addition, the reverse process has to take place to return
to the normal font. The font needs to recognize four new keys: two
for superscripts and two for subscripts. To avoid altering the existing
font definitions, you can access these with the numeric keypad on
your keyboard.
To add superscript and
subscript definitions to a font
This example procedure
is based on the AutoCAD Romans font file, although a similar
method applies to any AutoCAD font. This procedure adds four
new shape definitions to a font: super_on, super_off, sub_on, and sub_off,
which control the position and size of the characters that follow.
For simplicity, this example replaces the left- and right-bracket
characters ([and]) and the left and right curly brace characters
({and}) with the new characters. You may choose to replace other
characters or use a shape number in the extended range (ASCII codes
128 through 256). If you use an extended shape number, you need
to use the %%nnn method (where nnn is
the ASCII value of the character) for placing the new characters.
- Edit your SHP file with an ASCII text
editor.
- Search for the shape definitions of the
characters you are replacing. To comment out those definitions so
the new definitions can take their place, insert a semicolon in
front of each line of the shape definition. The shape definition
may continue for a number of lines.
The left- and right-bracket characters have
ASCII values of 91 and 93 (05B and 05D hex values, if the font is
Unicode). The left and right curly brace characters have ASCII values
of 123 and 125 (07B and 07D hex).
- Add the first and second values on the
second line of the definition, and divide the total by 2 as shown
in the following example:
*UNIFONT,6,Extended Simplex Roman for UNICODE
21,7,2,0 21 + 7 = 28, then 28 / 2 = 14. This number is used later.
- Add the following lines to the end of
the SHP file:
*91,8,super_on
2,8,(0,14),003,2,1,0
*93,8,super_off
2,004,2,8,(0,-14),1,0
*123,8,sub_on
2,8,(0,-14),003,2,1,0
*125,8,sub_off
2,004,2,8,(0,14),1,0
Notice the 14 and -14 values in the preceding
lines. They are Y axis offsets for the imaginary
pen. The value 14 is half the maximum height of a character in this
font, which is the correct approximation for superscripts and subscripts.
This value needs to be calculated for each font file, but you can modify
it any way you want.
- Save the file.
- Use the COMPILE command to compile the
SHP file.
Once the shape is compiled
and an appropriate style is defined, you can access the new pen-up
and pen-down commands by entering the [, ], {, and } characters.
The [ character initiates superscript and the ] character returns
from superscript to normal. The { character initiates subscript
and the } character returns from subscript to normal.
CommandsCOMPILE
Compiles
shape files and PostScript font files into SHX files.
LOAD
Makes
shapes available for use by the SHAPE command.
SHAPE
Inserts a shape from
a shape file that has been loaded using LOAD.